package com.jinglin.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.jinglin.entity.dto.TokenUserInfoDto;
import com.jinglin.entity.po.VideoInfo;
import com.jinglin.entity.po.VideoInfoFile;
import com.jinglin.entity.vo.PaginationResultVO;
import com.jinglin.entity.vo.VideoInfoResultVo;

import java.util.List;

/**
 * <p>
 * 视频信息 服务类
 * </p>
 *
 * @author ${author}
 * @since 2025-03-12
 */

public interface VideoInfoService extends IService<VideoInfo> {

    Integer reportVideoPlayOnline(String fileId, String deviceId);

    PaginationResultVO<VideoInfo> loadVideoList(Integer pageNo, Integer pageSize, Integer orderType, String videoName, String userId);

    void deleteVideo(String videoId,String userId);

    void addReadCount(String videoId);

    PaginationResultVO<VideoInfo> loadHotVideoList(Integer pageNo);

    VideoInfoResultVo getVideoInfo(String videoId, TokenUserInfoDto tokenUserInfoDto);

    PaginationResultVO<VideoInfo> searchVideos(String keyword, Integer orderType, Integer pageNo, Integer pageSize);
}
